scATAC-seq Vignette with ArchR (Omics Club)¶

1. Getting started with ArchR¶

In [1]:
#Import all of the necessary R packages
library(ArchR)
library(IRdisplay)
                                                   / |
                                                 /    \
            .                                  /      |.
            \\\                              /        |.
              \\\                          /           `|.
                \\\                      /              |.
                  \                    /                |\
                  \\#####\           /                  ||
                ==###########>      /                   ||
                 \\##==......\    /                     ||
            ______ =       =|__ /__                     ||      \\\
        ,--' ,----`-,__ ___/'  --,-`-===================##========>
       \               '        ##_______ _____ ,--,__,=##,__   ///
        ,    __==    ___,-,__,--'#'  ==='      `-'    | ##,-/
        -,____,---'       \\####\\________________,--\\_##,/
           ___      .______        ______  __    __  .______      
          /   \     |   _  \      /      ||  |  |  | |   _  \     
         /  ^  \    |  |_)  |    |  ,----'|  |__|  | |  |_)  |    
        /  /_\  \   |      /     |  |     |   __   | |      /     
       /  _____  \  |  |\  \\___ |  `----.|  |  |  | |  |\  \\___.
      /__/     \__\ | _| `._____| \______||__|  |__| | _| `._____|
    

ArchR : Version 1.0.2
For more information see our website : www.ArchRProject.com
If you encounter a bug please report : https://github.com/GreenleafLab/ArchR/issues

Loading Required Packages...

	Loading Package : grid v4.2.2

	Loading Package : gridExtra v2.3

	Loading Package : gtools v3.9.5

Warning message:
“package ‘gtools’ was built under R version 4.2.3”
	Loading Package : gtable v0.3.4

	Loading Package : ggplot2 v3.5.0

Warning message:
“package ‘ggplot2’ was built under R version 4.2.3”
	Loading Package : magrittr v2.0.3

	Loading Package : plyr v1.8.9

	Loading Package : stringr v1.5.1

Warning message:
“package ‘stringr’ was built under R version 4.2.3”
	Loading Package : data.table v1.15.2

Warning message:
“package ‘data.table’ was built under R version 4.2.3”
	Loading Package : matrixStats v1.2.0

Warning message:
“package ‘matrixStats’ was built under R version 4.2.3”
	Loading Package : S4Vectors v0.36.2

	Loading Package : GenomicRanges v1.50.2

	Loading Package : BiocGenerics v0.44.0

	Loading Package : Matrix v1.6.5

Warning message:
“package ‘Matrix’ was built under R version 4.2.3”
	Loading Package : Rcpp v1.0.12

Warning message:
“package ‘Rcpp’ was built under R version 4.2.3”
	Loading Package : SummarizedExperiment v1.28.0

	Loading Package : rhdf5 v2.42.1

In [12]:
# Read in tutorial dataset
inputFiles <- c("data/scATAC_BMMC_R1.fragments.tsv.gz")

# Set default genome to hg19 (also supports hg38, mm10)
addArchRGenome("hg19")

# Can set up multiple threads for parallelized operations in ArchR 
# addArchRThreads(threads = 16) 

#The "createArrowFiles" command will execute the following steps:
# 1. Read accessible fragments from the provided input files.
# 2. Calculate quality control information for each cell (i.e. TSS enrichment scores and nucleosome info).
# 3. Filter cells based on quality control parameters.
# 4. Create a genome-wide TileMatrix using 500-bp bins.
# 5. Create a GeneScoreMatrix using the custom geneAnnotation that was defined when we called addArchRGenome().
#Creation of Arrow files will create a folder in the current working directory called “QualityControl”, which will contain 2 plots associated with each of your samples
ArrowFiles <- createArrowFiles(
    #force=TRUE,
    inputFiles = inputFiles,
    sampleNames = c("scATAC_BMMC_R1"),
    filterTSS = 4, #Don't set this too high because you can always increase later
    filterFrags = 1000, 
    addTileMat = TRUE,
    addGeneScoreMat = TRUE,
)
Setting default genome to Hg19.

filterFrags is no longer a valid input. Please use minFrags! Setting filterFrags value to minFrags!

filterTSS is no longer a valid input. Please use minTSS! Setting filterTSS value to minTSS!

Using GeneAnnotation set by addArchRGenome(Hg19)!

Using GeneAnnotation set by addArchRGenome(Hg19)!

ArchR logging to : ArchRLogs/ArchR-createArrows-ca5d174385b-Date-2024-03-11_Time-15-54-00.log
If there is an issue, please report to github with logFile!

Cleaning Temporary Files

2024-03-11 15:54:00 : Batch Execution w/ safelapply!, 0 mins elapsed.

(scATAC_BMMC_R1 : 1 of 1) Checking if completed file exists!

2024-03-11 15:54:00 : (scATAC_BMMC_R1 : 1 of 1) Arrow Exists! Marking as completed since force = FALSE!, 0 mins elapsed.

ArchR logging successful to : ArchRLogs/ArchR-createArrows-ca5d174385b-Date-2024-03-11_Time-15-54-00.log

For BMMC (in automatically generated "QualityControl" folder):¶

Drawing Drawing

2. Doublet inference with ArchR¶

To predict which “cells” are actually doublets, we synthesize in silico doublets from the data by mixing the reads from thousands of combinations of individual cells. We then project these synthetic doublets into the UMAP embedding and identify their nearest neighbor. By iterating this procedure thousands of times, we can identify “cells” in our data whose signal looks very similar to synthetic doublets.

In [13]:
# Adds the inferred doublet scores to each Arrow file
doubScores <- addDoubletScores(
    input = ArrowFiles,
    k = 10, #Refers to how many cells near a "pseudo-doublet" to count.
    knnMethod = "UMAP", #Refers to the embedding to use for nearest neighbor search with doublet projection.
    LSIMethod = 1
)
ArchR logging to : ArchRLogs/ArchR-addDoubletScores-ca5d751fdf1b-Date-2024-03-11_Time-15-54-00.log
If there is an issue, please report to github with logFile!

2024-03-11 15:54:00 : Batch Execution w/ safelapply!, 0 mins elapsed.

2024-03-11 15:54:00 : scATAC_BMMC_R1 (1 of 1) :  Computing Doublet Statistics, 0 mins elapsed.

Example output of simulated doublet scores (also in "QualityControl" folder)¶

Drawing Drawing Drawing

3. Create ArchR Project¶

In [ ]:
# An ArchRProject allows us to group multiple Arrow files together into a single project
projHeme1 <- ArchRProject(
  ArrowFiles = ArrowFiles, 
  outputDirectory = "HemeTutorial",
  copyArrows = TRUE #This is recommended so that if you modify the Arrow files you have an original copy for later usage
)

# Using the saveArchRProject() function will:
# 1. Copy the current Arrow files to the designated outputDirectory so that they are exclusively associated with the new ArchRProject object.
# 2. Save a copy of the designated ArchRProject in the outputDirectory.
saveArchRProject(ArchRProj = projHeme1, outputDirectory = "Save-ProjHeme1", load = FALSE)


# filterDoublets() function will remove predicted doublets
# The parameter filterRatio is the maximum ratio of predicted doublets to filter based on the number of pass-filter cells. 
# For example, if there are 5000 cells, the maximum number of filtered predicted doublets would be filterRatio * 5000^2 / (100000) (which simplifies to filterRatio * 5000 * 0.05). 
# This filterRatio allows you to apply a consistent filter across multiple different samples that may have different percentages of doublets because they were run with different cell loading concentrations. 
# The higher the filterRatio, the greater the number of cells potentially removed as doublets.
projHeme2 <- filterDoublets(projHeme1, filterRatio=1)

saveArchRProject(ArchRProj = projHeme2, outputDirectory = "Save-ProjHeme2", load = FALSE)
Using GeneAnnotation set by addArchRGenome(Hg19)!

Using GeneAnnotation set by addArchRGenome(Hg19)!

Validating Arrows...

Getting SampleNames...

1 


Copying ArrowFiles to Ouptut Directory! If you want to save disk space set copyArrows = FALSE

1 


Getting Cell Metadata...

1 


Merging Cell Metadata...

Initializing ArchRProject...


                                                   / |
                                                 /    \
            .                                  /      |.
            \\\                              /        |.
              \\\                          /           `|.
                \\\                      /              |.
                  \                    /                |\
                  \\#####\           /                  ||
                ==###########>      /                   ||
                 \\##==......\    /                     ||
            ______ =       =|__ /__                     ||      \\\
        ,--' ,----`-,__ ___/'  --,-`-===================##========>
       \               '        ##_______ _____ ,--,__,=##,__   ///
        ,    __==    ___,-,__,--'#'  ==='      `-'    | ##,-/
        -,____,---'       \\####\\________________,--\\_##,/
           ___      .______        ______  __    __  .______      
          /   \     |   _  \      /      ||  |  |  | |   _  \     
         /  ^  \    |  |_)  |    |  ,----'|  |__|  | |  |_)  |    
        /  /_\  \   |      /     |  |     |   __   | |      /     
       /  _____  \  |  |\  \\___ |  `----.|  |  |  | |  |\  \\___.
      /__/     \__\ | _| `._____| \______||__|  |__| | _| `._____|
    

Copying ArchRProject to new outputDirectory : /gs/gsfs0/home/agriffen/pw/Omics_Club_Vignette/Save-ProjHeme1

Copying Arrow Files...

Copying Arrow Files (1 of 1)

Getting ImputeWeights

No imputeWeights found, returning NULL

Copying Other Files...

Saving ArchRProject...

Filtering 243 cells from ArchRProject!

	scATAC_BMMC_R1 : 243 of 4932 (4.9%)

Copying ArchRProject to new outputDirectory : /gs/gsfs0/home/agriffen/pw/Omics_Club_Vignette/Save-ProjHeme2

Copying Arrow Files...

Copying Arrow Files (1 of 1)

Getting ImputeWeights

No imputeWeights found, returning NULL

Copying Other Files...

Saving ArchRProject...

In [ ]:
# Load in ArchR Project
projHeme2 <- loadArchRProject("Save-ProjHeme2")
Successfully loaded ArchRProject!


                                                   / |
                                                 /    \
            .                                  /      |.
            \\\                              /        |.
              \\\                          /           `|.
                \\\                      /              |.
                  \                    /                |\
                  \\#####\           /                  ||
                ==###########>      /                   ||
                 \\##==......\    /                     ||
            ______ =       =|__ /__                     ||      \\\
        ,--' ,----`-,__ ___/'  --,-`-===================##========>
       \               '        ##_______ _____ ,--,__,=##,__   ///
        ,    __==    ___,-,__,--'#'  ==='      `-'    | ##,-/
        -,____,---'       \\####\\________________,--\\_##,/
           ___      .______        ______  __    __  .______      
          /   \     |   _  \      /      ||  |  |  | |   _  \     
         /  ^  \    |  |_)  |    |  ,----'|  |__|  | |  |_)  |    
        /  /_\  \   |      /     |  |     |   __   | |      /     
       /  _____  \  |  |\  \\___ |  `----.|  |  |  | |  |\  \\___.
      /__/     \__\ | _| `._____| \______||__|  |__| | _| `._____|
    

4. Dimensionality Reduction¶

In scRNA-seq, identifying variable genes is a common way to compute dimensionality reduction (such as PCA). This is done because these highly variable genes are more likely to be biologically important and this reduces experimental noise. In scATAC-seq, the data is binary and thus you cannot identify variable peaks for dimensionality reduction. Rather than identifying the most variable peaks, we have tried using the most accessible features as input to LSI; however, the results when running multiple samples have shown high degrees of noise and low reproducibility. To remedy this we introduced the “iterative LSI” approach (Satpathy, Granja et al. Nature Biotechnology 2019 and Granja, Klemm and McGinnis* et al. Nature Biotechnology 2019). This approach computes an inital LSI transformation on the most accessible tiles and identifies lower resolution clusters that are not batch confounded. For example, when performed on peripheral blood mononuclear cells, this will identify clusters corresponding to the major cell types (T cells, B cells, and monocytes). Then, ArchR computes the average accessibility for each of these clusters across all features. ArchR then identifies the most variable peaks across these clusters and uses these features for LSI again. In this second iteration, the most variable peaks are more similar to the variable genes used in scRNA-seq LSI implementations. The user can set how many iterations of LSI should be performed. We have found this approach to minimize observed batch effects and allow dimensionality reduction operations on a more reasonably sized feature matrix.

image.png

In [ ]:
projHeme2 <- addIterativeLSI(
    ArchRProj = projHeme2,
    useMatrix = "TileMatrix", 
    name = "IterativeLSI", 
    iterations = 2, 
    clusterParams = list( #See Seurat::FindClusters
        resolution = c(0.2), 
        sampleCells = 10000, 
        n.start = 10
    ), 
    varFeatures = 25000, 
    dimsToUse = 1:30
)

# Try tweaking the parameters iterations, varFeatures and resolution
# Save as reducedDims object “IterativeLSI2” for illustrative purposes, but we won’t use it downstream
# projHeme2 <- addIterativeLSI(
#     ArchRProj = projHeme2,
#     useMatrix = "TileMatrix", 
#     name = "IterativeLSI2", 
#     iterations = 4, 
#     clusterParams = list( #See Seurat::FindClusters
#         resolution = c(0.1, 0.2, 0.4), 
#         sampleCells = 10000, 
#         n.start = 10
#     ), 
#     varFeatures = 15000, 
#     dimsToUse = 1:30
# )
Checking Inputs...

ArchR logging to : ArchRLogs/ArchR-addIterativeLSI-c70a657de1f4-Date-2024-03-11_Time-15-26-00.log
If there is an issue, please report to github with logFile!

2024-03-11 15:26:01 : Computing Total Across All Features, 0.002 mins elapsed.

2024-03-11 15:26:03 : Computing Top Features, 0.034 mins elapsed.

###########
2024-03-11 15:26:03 : Running LSI (1 of 2) on Top Features, 0.042 mins elapsed.
###########

2024-03-11 15:26:03 : Creating Partial Matrix, 0.043 mins elapsed.

2024-03-11 15:26:06 : Computing LSI, 0.083 mins elapsed.

2024-03-11 15:26:16 : Identifying Clusters, 0.253 mins elapsed.

Warning message:
"package 'Seurat' was built under R version 4.2.3"
Warning message:
"package 'SeuratObject' was built under R version 4.2.3"
Warning message:
"package 'sp' was built under R version 4.2.3"
Warning message:
"Data is of class matrix. Coercing to dgCMatrix."
2024-03-11 15:26:22 : Identified 4 Clusters, 0.355 mins elapsed.

2024-03-11 15:26:22 : Saving LSI Iteration, 0.356 mins elapsed.

Found more than one class "dist" in cache; using the first, from namespace 'BiocGenerics'

Also defined by 'spam'

Found more than one class "dist" in cache; using the first, from namespace 'BiocGenerics'

Also defined by 'spam'

2024-03-11 15:26:34 : Creating Cluster Matrix on the total Group Features, 0.553 mins elapsed.

2024-03-11 15:26:45 : Computing Variable Features, 0.735 mins elapsed.

###########
2024-03-11 15:26:45 : Running LSI (2 of 2) on Variable Features, 0.736 mins elapsed.
###########

2024-03-11 15:26:45 : Creating Partial Matrix, 0.736 mins elapsed.

2024-03-11 15:26:48 : Computing LSI, 0.778 mins elapsed.

2024-03-11 15:26:57 : Finished Running IterativeLSI, 0.927 mins elapsed.

In [ ]:
# Identify unique cell clusters in your dataset
projHeme2 <- addClusters(
    input = projHeme2,
    reducedDims = "IterativeLSI",
    method = "Seurat",
    name = "Clusters",
    resolution = 0.8
)
ArchR logging to : ArchRLogs/ArchR-addClusters-c70a6da08451-Date-2024-03-11_Time-15-26-57.log
If there is an issue, please report to github with logFile!

2024-03-11 15:26:57 : Running Seurats FindClusters (Stuart et al. Cell 2019), 0.001 mins elapsed.

Warning message:
"Data is of class matrix. Coercing to dgCMatrix."
Computing nearest neighbor graph

Computing SNN

Modularity Optimizer version 1.3.0 by Ludo Waltman and Nees Jan van Eck

Number of nodes: 4689
Number of edges: 400301

Running Louvain algorithm...
Maximum modularity in 10 random starts: 0.7249
Number of communities: 7
Elapsed time: 0 seconds
2024-03-11 15:27:00 : Testing Outlier Clusters, 0.063 mins elapsed.

2024-03-11 15:27:00 : Assigning Cluster Names to 7 Clusters, 0.063 mins elapsed.

2024-03-11 15:27:00 : Finished addClusters, 0.063 mins elapsed.

In [ ]:
# Add UMAP embedding to visualize single cells in a reduced dimension space
projHeme2 <- addUMAP(
    ArchRProj = projHeme2, 
    reducedDims = "IterativeLSI", 
    name = "UMAP", 
    nNeighbors = 30, 
    minDist = 0.5, 
    metric = "cosine"
)

p1 <- plotEmbedding(ArchRProj = projHeme2, colorBy = "cellColData", name = "Sample", embedding = "UMAP")
p2 <- plotEmbedding(ArchRProj = projHeme2, colorBy = "cellColData", name = "Clusters", embedding = "UMAP")

p1
p2
# Save the plot in your project directory
#plotPDF(p1,p2, name = "Plot-UMAP-Sample-Clusters.pdf", ArchRProj = projHeme2, addDOC = FALSE, width = 5, height = 5)
15:27:01 UMAP embedding parameters a = 0.583 b = 1.334

Found more than one class "dist" in cache; using the first, from namespace 'BiocGenerics'

Also defined by 'spam'

15:27:01 Read 4689 rows and found 30 numeric columns

15:27:01 Using Annoy for neighbor search, n_neighbors = 30

Found more than one class "dist" in cache; using the first, from namespace 'BiocGenerics'

Also defined by 'spam'

15:27:01 Building Annoy index with metric = cosine, n_trees = 50

0%   10   20   30   40   50   60   70   80   90   100%

[----|----|----|----|----|----|----|----|----|----|

*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
|

15:27:01 Writing NN index file to temp file /var/folders/64/9f1dvbln4jgcz1hg9h_jvrtr0000gn/T//RtmpioxVKq/filec70a454f1a11

15:27:01 Searching Annoy index using 4 threads, search_k = 3000

15:27:01 Annoy recall = 100%

15:27:02 Commencing smooth kNN distance calibration using 4 threads
 with target n_neighbors = 30

15:27:02 Initializing from normalized Laplacian + noise (using RSpectra)

15:27:02 Commencing optimization for 500 epochs, with 225282 positive edges

15:27:07 Optimization finished

15:27:07 Creating temp model dir /var/folders/64/9f1dvbln4jgcz1hg9h_jvrtr0000gn/T//RtmpioxVKq/dirc70aeb3476d

15:27:07 Creating dir /var/folders/64/9f1dvbln4jgcz1hg9h_jvrtr0000gn/T//RtmpioxVKq/dirc70aeb3476d

15:27:08 Changing to /var/folders/64/9f1dvbln4jgcz1hg9h_jvrtr0000gn/T//RtmpioxVKq/dirc70aeb3476d

15:27:08 Creating /Users/anthonygriffen/Dropbox (EinsteinMed)/Griffen - LaFave Lab/Omics Club Vignette/Final_Version/Save-ProjHeme2/Embeddings/Save-Uwot-UMAP-Params-IterativeLSI-c70a4c3875a3-Date-2024-03-11_Time-15-27-07.tar

ArchR logging to : ArchRLogs/ArchR-plotEmbedding-c70a1c164ca5-Date-2024-03-11_Time-15-27-08.log
If there is an issue, please report to github with logFile!

Getting UMAP Embedding

ColorBy = cellColData

Plotting Embedding

1 


ArchR logging successful to : ArchRLogs/ArchR-plotEmbedding-c70a1c164ca5-Date-2024-03-11_Time-15-27-08.log

ArchR logging to : ArchRLogs/ArchR-plotEmbedding-c70a7c01f30a-Date-2024-03-11_Time-15-27-08.log
If there is an issue, please report to github with logFile!

Getting UMAP Embedding

ColorBy = cellColData

Plotting Embedding

1 


ArchR logging successful to : ArchRLogs/ArchR-plotEmbedding-c70a7c01f30a-Date-2024-03-11_Time-15-27-08.log

5. Gene Scores and Marker Genes¶

We estimate gene expression for cell-type specific marker genes from our chromatin accessibility data by using gene scores.

ArchR computes gene scores based on 3 major components:

  1. Accessibility within the entire gene body contributes to the gene score.
  2. An exponential weighting function that accounts for the activity of putative distal regulatory elements in a distance-dependent fashion.
  3. Imposed gene boundaries that minimizes the contribution of unrelated regulatory elements to the gene score.
In [ ]:
markerGenes  <- c(
    "CD34",  #Early Progenitor
    "PAX5", "MS4A1", "MME", #B-Cell Trajectory
    "CD14", "MPO", #Monocytes
    "CD3D", "CD8A"#TCells
  )

p <- plotEmbedding(
    ArchRProj = projHeme2, 
    colorBy = "GeneScoreMatrix", 
    name = markerGenes, 
    embedding = "UMAP",
    quantCut = c(0.01, 0.95),
    imputeWeights = NULL
)

p
ArchR logging to : ArchRLogs/ArchR-plotEmbedding-c70a49a8a46f-Date-2024-03-11_Time-15-29-43.log
If there is an issue, please report to github with logFile!

Getting UMAP Embedding

ColorBy = GeneScoreMatrix

Getting Matrix Values...

2024-03-11 15:29:44 : 

1 


Plotting Embedding

1 
2 
3 
4 
5 
6 
7 
8 


ArchR logging successful to : ArchRLogs/ArchR-plotEmbedding-c70a49a8a46f-Date-2024-03-11_Time-15-29-43.log

$CD34

$PAX5

$MS4A1

$MME

$CD14

$MPO

$CD3D

$CD8A

Marker Genes Imputation with MAGIC

In the previous section, you may have noticed that some of the gene score plots appear quite variable. This is because of the sparsity of scATAC-seq data. We can use MAGIC to impute gene scores by smoothing signal across nearby cells. In our hands, this greatly improves the visual interpretation of gene scores. To do this, we first add impute weights to our ArchRProject.

In [ ]:
projHeme2 <- addImputeWeights(projHeme2)

markerGenes  <- c(
    "CD34",  #Early Progenitor
    "PAX5", "MS4A1", "MME", #B-Cell Trajectory
    "CD14", "MPO", #Monocytes
    "CD3D", "CD8A"#TCells
  )

# Impute weights can be passed to plotEmbedding() when plotting gene scores overlayed on the UMAP embedding.
p <- plotEmbedding(
    ArchRProj = projHeme2, 
    colorBy = "GeneScoreMatrix", 
    name = markerGenes, 
    embedding = "UMAP",
    imputeWeights = getImputeWeights(projHeme2)
)

p
ArchR logging to : ArchRLogs/ArchR-addImputeWeights-c70a4eb9a9e2-Date-2024-03-11_Time-15-30-06.log
If there is an issue, please report to github with logFile!

2024-03-11 15:30:06 : Computing Impute Weights Using Magic (Cell 2018), 0 mins elapsed.

Getting ImputeWeights

ArchR logging to : ArchRLogs/ArchR-plotEmbedding-c70a7f405cce-Date-2024-03-11_Time-15-30-09.log
If there is an issue, please report to github with logFile!

Getting UMAP Embedding

ColorBy = GeneScoreMatrix

Getting Matrix Values...

2024-03-11 15:30:09 : 

1 


Imputing Matrix

Using weights on disk

1 of 1

Plotting Embedding

1 
2 
3 
4 
5 
6 
7 
8 


ArchR logging successful to : ArchRLogs/ArchR-plotEmbedding-c70a7f405cce-Date-2024-03-11_Time-15-30-09.log

$CD34

$PAX5

$MS4A1

$MME

$CD14

$MPO

$CD3D

$CD8A

Make Pseudo-Bulk Replicates¶

Because scATAC-seq data is essentially binary - meaning any individual locus is either accessible or not accessible - we often find ourselves in the situation where we want to perform analyses that are just not possible on a single cell. Moreover, many of the analyses we would like to perform require replicates to obtain measurements of statistical significance. In single-cell data we get around these problems by creating pseudo-bulk replicates. The term pseudo-bulk refers to a grouping of single cells where the data from each single cell is combined into a single pseudo-sample that resembles a bulk ATAC-seq experiment. ArchR makes multiple such pseudo-bulk samples for each desired cell grouping, hence the term pseudo-bulk replicates. The underlying assumption in this process is that the single cells that are being grouped together are sufficiently similar that we do not care to understand the differences between them. These cell groupings are almost always derived from individual clusters or supersets of clusters that correspond to known cell types.

In [ ]:
# This step takes a considerable amount of time, so I would recommend moving on to the following block of code to load in the saved project
projHeme2 <- addGroupCoverages(ArchRProj = projHeme2, groupBy = "Clusters")

projHeme3 <- saveArchRProject(projHeme2, "Save-ProjHeme3", load=TRUE)
ArchR logging to : ArchRLogs/ArchR-addGroupCoverages-c70a498463a9-Date-2024-03-11_Time-15-33-13.log
If there is an issue, please report to github with logFile!

C1 (1 of 7) : CellGroups N = 2

C2 (2 of 7) : CellGroups N = 2

C3 (3 of 7) : CellGroups N = 2

C4 (4 of 7) : CellGroups N = 2

C5 (5 of 7) : CellGroups N = 2

C6 (6 of 7) : CellGroups N = 2

C7 (7 of 7) : CellGroups N = 2

2024-03-11 15:33:14 : Creating Coverage Files!, 0.011 mins elapsed.

2024-03-11 15:33:14 : Batch Execution w/ safelapply!, 0.011 mins elapsed.

2024-03-11 15:33:14 : Group C1._.Rep1 (1 of 14) : Creating Group Coverage File : C1._.Rep1.insertions.coverage.h5, 0.011 mins elapsed.

Number of Cells = 95

Coverage File Exists!

Added Coverage Group

Added Metadata Group

Added ArrowCoverage Class

Added Coverage/Info

Added Coverage/Info/CellNames

2024-03-11 15:33:25 : Group C1._.Rep2 (2 of 14) : Creating Group Coverage File : C1._.Rep2.insertions.coverage.h5, 0.201 mins elapsed.

Number of Cells = 40

Coverage File Exists!

Added Coverage Group

Added Metadata Group

Added ArrowCoverage Class

Added Coverage/Info

Added Coverage/Info/CellNames

2024-03-11 15:33:36 : Group C2._.Rep1 (3 of 14) : Creating Group Coverage File : C2._.Rep1.insertions.coverage.h5, 0.39 mins elapsed.

Number of Cells = 500

Coverage File Exists!

Added Coverage Group

Added Metadata Group

Added ArrowCoverage Class

Added Coverage/Info

Added Coverage/Info/CellNames

2024-03-11 15:33:49 : Group C2._.Rep2 (4 of 14) : Creating Group Coverage File : C2._.Rep2.insertions.coverage.h5, 0.602 mins elapsed.

Number of Cells = 40

Coverage File Exists!

Added Coverage Group

Added Metadata Group

Added ArrowCoverage Class

Added Coverage/Info

Added Coverage/Info/CellNames

2024-03-11 15:34:02 : Group C3._.Rep1 (5 of 14) : Creating Group Coverage File : C3._.Rep1.insertions.coverage.h5, 0.821 mins elapsed.

Number of Cells = 500

Coverage File Exists!

Added Coverage Group

Added Metadata Group

Added ArrowCoverage Class

Added Coverage/Info

Added Coverage/Info/CellNames

2024-03-11 15:34:15 : Group C3._.Rep2 (6 of 14) : Creating Group Coverage File : C3._.Rep2.insertions.coverage.h5, 1.03 mins elapsed.

Number of Cells = 40

Coverage File Exists!

Added Coverage Group

Added Metadata Group

Added ArrowCoverage Class

Added Coverage/Info

Added Coverage/Info/CellNames

2024-03-11 15:34:26 : Group C4._.Rep1 (7 of 14) : Creating Group Coverage File : C4._.Rep1.insertions.coverage.h5, 1.213 mins elapsed.

Number of Cells = 275

Coverage File Exists!

Added Coverage Group

Added Metadata Group

Added ArrowCoverage Class

Added Coverage/Info

Added Coverage/Info/CellNames

2024-03-11 15:34:37 : Group C4._.Rep2 (8 of 14) : Creating Group Coverage File : C4._.Rep2.insertions.coverage.h5, 1.395 mins elapsed.

Number of Cells = 40

Coverage File Exists!

Added Coverage Group

Added Metadata Group

Added ArrowCoverage Class

Added Coverage/Info

Added Coverage/Info/CellNames

2024-03-11 15:34:47 : Group C5._.Rep1 (9 of 14) : Creating Group Coverage File : C5._.Rep1.insertions.coverage.h5, 1.57 mins elapsed.

Number of Cells = 318

Coverage File Exists!

Added Coverage Group

Added Metadata Group

Added ArrowCoverage Class

Added Coverage/Info

Added Coverage/Info/CellNames

2024-03-11 15:34:58 : Group C5._.Rep2 (10 of 14) : Creating Group Coverage File : C5._.Rep2.insertions.coverage.h5, 1.748 mins elapsed.

Number of Cells = 40

Coverage File Exists!

Added Coverage Group

Added Metadata Group

Added ArrowCoverage Class

Added Coverage/Info

Added Coverage/Info/CellNames

2024-03-11 15:35:08 : Group C6._.Rep1 (11 of 14) : Creating Group Coverage File : C6._.Rep1.insertions.coverage.h5, 1.914 mins elapsed.

Number of Cells = 500

Coverage File Exists!

Added Coverage Group

Added Metadata Group

Added ArrowCoverage Class

Added Coverage/Info

Added Coverage/Info/CellNames

2024-03-11 15:35:19 : Group C6._.Rep2 (12 of 14) : Creating Group Coverage File : C6._.Rep2.insertions.coverage.h5, 2.097 mins elapsed.

Number of Cells = 40

Coverage File Exists!

Added Coverage Group

Added Metadata Group

Added ArrowCoverage Class

Added Coverage/Info

Added Coverage/Info/CellNames

2024-03-11 15:35:29 : Group C7._.Rep1 (13 of 14) : Creating Group Coverage File : C7._.Rep1.insertions.coverage.h5, 2.267 mins elapsed.

Number of Cells = 328

Coverage File Exists!

Added Coverage Group

Added Metadata Group

Added ArrowCoverage Class

Added Coverage/Info

Added Coverage/Info/CellNames

2024-03-11 15:35:40 : Group C7._.Rep2 (14 of 14) : Creating Group Coverage File : C7._.Rep2.insertions.coverage.h5, 2.45 mins elapsed.

Number of Cells = 40

Coverage File Exists!

Added Coverage Group

Added Metadata Group

Added ArrowCoverage Class

Added Coverage/Info

Added Coverage/Info/CellNames

2024-03-11 15:35:50 : Adding Kmer Bias to Coverage Files!, 2.624 mins elapsed.

Kmer Bias chr1 (1 of 24)

chr1 
Coverage File chr1 (1 of 14)

Coverage File chr1 (2 of 14)

Coverage File chr1 (3 of 14)

Coverage File chr1 (4 of 14)

Coverage File chr1 (5 of 14)

Coverage File chr1 (6 of 14)

Coverage File chr1 (7 of 14)

Coverage File chr1 (8 of 14)

Coverage File chr1 (9 of 14)

Coverage File chr1 (10 of 14)

Coverage File chr1 (11 of 14)

Coverage File chr1 (12 of 14)

Coverage File chr1 (13 of 14)

Coverage File chr1 (14 of 14)

Kmer Bias chr10 (2 of 24)

chr10 
Coverage File chr10 (1 of 14)

Coverage File chr10 (2 of 14)

Coverage File chr10 (3 of 14)

Coverage File chr10 (4 of 14)

Coverage File chr10 (5 of 14)

Coverage File chr10 (6 of 14)

Coverage File chr10 (7 of 14)

Coverage File chr10 (8 of 14)

Coverage File chr10 (9 of 14)

Coverage File chr10 (10 of 14)

Coverage File chr10 (11 of 14)

Coverage File chr10 (12 of 14)

Coverage File chr10 (13 of 14)

Coverage File chr10 (14 of 14)

Kmer Bias chr11 (3 of 24)

chr11 
Coverage File chr11 (1 of 14)

Coverage File chr11 (2 of 14)

Coverage File chr11 (3 of 14)

Coverage File chr11 (4 of 14)

Coverage File chr11 (5 of 14)

Coverage File chr11 (6 of 14)

Coverage File chr11 (7 of 14)

Coverage File chr11 (8 of 14)

Coverage File chr11 (9 of 14)

Coverage File chr11 (10 of 14)

Coverage File chr11 (11 of 14)

Coverage File chr11 (12 of 14)

Coverage File chr11 (13 of 14)

Coverage File chr11 (14 of 14)

Kmer Bias chr12 (4 of 24)

chr12 
Coverage File chr12 (1 of 14)

Coverage File chr12 (2 of 14)

Coverage File chr12 (3 of 14)

Coverage File chr12 (4 of 14)

Coverage File chr12 (5 of 14)

Coverage File chr12 (6 of 14)

Coverage File chr12 (7 of 14)

Coverage File chr12 (8 of 14)

Coverage File chr12 (9 of 14)

Coverage File chr12 (10 of 14)

Coverage File chr12 (11 of 14)

Coverage File chr12 (12 of 14)

Coverage File chr12 (13 of 14)

Coverage File chr12 (14 of 14)

Kmer Bias chr13 (5 of 24)

chr13 
Coverage File chr13 (1 of 14)

Coverage File chr13 (2 of 14)

Coverage File chr13 (3 of 14)

Coverage File chr13 (4 of 14)

Coverage File chr13 (5 of 14)

Coverage File chr13 (6 of 14)

Coverage File chr13 (7 of 14)

Coverage File chr13 (8 of 14)

Coverage File chr13 (9 of 14)

Coverage File chr13 (10 of 14)

Coverage File chr13 (11 of 14)

Coverage File chr13 (12 of 14)

Coverage File chr13 (13 of 14)

Coverage File chr13 (14 of 14)

Kmer Bias chr14 (6 of 24)

chr14 
Coverage File chr14 (1 of 14)

Coverage File chr14 (2 of 14)

Coverage File chr14 (3 of 14)

Coverage File chr14 (4 of 14)

Coverage File chr14 (5 of 14)

Coverage File chr14 (6 of 14)

Coverage File chr14 (7 of 14)

Coverage File chr14 (8 of 14)

Coverage File chr14 (9 of 14)

Coverage File chr14 (10 of 14)

Coverage File chr14 (11 of 14)

Coverage File chr14 (12 of 14)

Coverage File chr14 (13 of 14)

Coverage File chr14 (14 of 14)

Kmer Bias chr15 (7 of 24)

chr15 
Coverage File chr15 (1 of 14)

Coverage File chr15 (2 of 14)

Coverage File chr15 (3 of 14)

Coverage File chr15 (4 of 14)

Coverage File chr15 (5 of 14)

Coverage File chr15 (6 of 14)

Coverage File chr15 (7 of 14)

Coverage File chr15 (8 of 14)

Coverage File chr15 (9 of 14)

Coverage File chr15 (10 of 14)

Coverage File chr15 (11 of 14)

Coverage File chr15 (12 of 14)

Coverage File chr15 (13 of 14)

Coverage File chr15 (14 of 14)

Kmer Bias chr16 (8 of 24)

chr16 
Coverage File chr16 (1 of 14)

Coverage File chr16 (2 of 14)

Coverage File chr16 (3 of 14)

Coverage File chr16 (4 of 14)

Coverage File chr16 (5 of 14)

Coverage File chr16 (6 of 14)

Coverage File chr16 (7 of 14)

Coverage File chr16 (8 of 14)

Coverage File chr16 (9 of 14)

Coverage File chr16 (10 of 14)

Coverage File chr16 (11 of 14)

Coverage File chr16 (12 of 14)

Coverage File chr16 (13 of 14)

Coverage File chr16 (14 of 14)

Kmer Bias chr17 (9 of 24)

chr17 
Coverage File chr17 (1 of 14)

Coverage File chr17 (2 of 14)

Coverage File chr17 (3 of 14)

Coverage File chr17 (4 of 14)

Coverage File chr17 (5 of 14)

Coverage File chr17 (6 of 14)

Coverage File chr17 (7 of 14)

Coverage File chr17 (8 of 14)

Coverage File chr17 (9 of 14)

Coverage File chr17 (10 of 14)

Coverage File chr17 (11 of 14)

Coverage File chr17 (12 of 14)

Coverage File chr17 (13 of 14)

Coverage File chr17 (14 of 14)

Kmer Bias chr18 (10 of 24)

chr18 
Coverage File chr18 (1 of 14)

Coverage File chr18 (2 of 14)

Coverage File chr18 (3 of 14)

Coverage File chr18 (4 of 14)

Coverage File chr18 (5 of 14)

Coverage File chr18 (6 of 14)

Coverage File chr18 (7 of 14)

Coverage File chr18 (8 of 14)

Coverage File chr18 (9 of 14)

Coverage File chr18 (10 of 14)

Coverage File chr18 (11 of 14)

Coverage File chr18 (12 of 14)

Coverage File chr18 (13 of 14)

Coverage File chr18 (14 of 14)

Kmer Bias chr19 (11 of 24)

chr19 
Coverage File chr19 (1 of 14)

Coverage File chr19 (2 of 14)

Coverage File chr19 (3 of 14)

Coverage File chr19 (4 of 14)

Coverage File chr19 (5 of 14)

Coverage File chr19 (6 of 14)

Coverage File chr19 (7 of 14)

Coverage File chr19 (8 of 14)

Coverage File chr19 (9 of 14)

Coverage File chr19 (10 of 14)

Coverage File chr19 (11 of 14)

Coverage File chr19 (12 of 14)

Coverage File chr19 (13 of 14)

Coverage File chr19 (14 of 14)

Kmer Bias chr2 (12 of 24)

chr2 
Coverage File chr2 (1 of 14)

Coverage File chr2 (2 of 14)

Coverage File chr2 (3 of 14)

Coverage File chr2 (4 of 14)

Coverage File chr2 (5 of 14)

Coverage File chr2 (6 of 14)

Coverage File chr2 (7 of 14)

Coverage File chr2 (8 of 14)

Coverage File chr2 (9 of 14)

Coverage File chr2 (10 of 14)

Coverage File chr2 (11 of 14)

Coverage File chr2 (12 of 14)

Coverage File chr2 (13 of 14)

Coverage File chr2 (14 of 14)

Kmer Bias chr20 (13 of 24)

chr20 
Coverage File chr20 (1 of 14)

Coverage File chr20 (2 of 14)

Coverage File chr20 (3 of 14)

Coverage File chr20 (4 of 14)

Coverage File chr20 (5 of 14)

Coverage File chr20 (6 of 14)

Coverage File chr20 (7 of 14)

Coverage File chr20 (8 of 14)

Coverage File chr20 (9 of 14)

Coverage File chr20 (10 of 14)

Coverage File chr20 (11 of 14)

Coverage File chr20 (12 of 14)

Coverage File chr20 (13 of 14)

Coverage File chr20 (14 of 14)

Kmer Bias chr21 (14 of 24)

chr21 
Coverage File chr21 (1 of 14)

Coverage File chr21 (2 of 14)

Coverage File chr21 (3 of 14)

Coverage File chr21 (4 of 14)

Coverage File chr21 (5 of 14)

Coverage File chr21 (6 of 14)

Coverage File chr21 (7 of 14)

Coverage File chr21 (8 of 14)

Coverage File chr21 (9 of 14)

Coverage File chr21 (10 of 14)

Coverage File chr21 (11 of 14)

Coverage File chr21 (12 of 14)

Coverage File chr21 (13 of 14)

Coverage File chr21 (14 of 14)

Kmer Bias chr22 (15 of 24)

chr22 
Coverage File chr22 (1 of 14)

Coverage File chr22 (2 of 14)

Coverage File chr22 (3 of 14)

Coverage File chr22 (4 of 14)

Coverage File chr22 (5 of 14)

Coverage File chr22 (6 of 14)

Coverage File chr22 (7 of 14)

Coverage File chr22 (8 of 14)

Coverage File chr22 (9 of 14)

Coverage File chr22 (10 of 14)

Coverage File chr22 (11 of 14)

Coverage File chr22 (12 of 14)

Coverage File chr22 (13 of 14)

Coverage File chr22 (14 of 14)

Kmer Bias chr3 (16 of 24)

chr3 
Coverage File chr3 (1 of 14)

Coverage File chr3 (2 of 14)

Coverage File chr3 (3 of 14)

Coverage File chr3 (4 of 14)

Coverage File chr3 (5 of 14)

Coverage File chr3 (6 of 14)

Coverage File chr3 (7 of 14)

Coverage File chr3 (8 of 14)

Coverage File chr3 (9 of 14)

Coverage File chr3 (10 of 14)

Coverage File chr3 (11 of 14)

Coverage File chr3 (12 of 14)

Coverage File chr3 (13 of 14)

Coverage File chr3 (14 of 14)

Kmer Bias chr4 (17 of 24)

chr4 
Coverage File chr4 (1 of 14)

Coverage File chr4 (2 of 14)

Coverage File chr4 (3 of 14)

Coverage File chr4 (4 of 14)

Coverage File chr4 (5 of 14)

Coverage File chr4 (6 of 14)

Coverage File chr4 (7 of 14)

Coverage File chr4 (8 of 14)

Coverage File chr4 (9 of 14)

Coverage File chr4 (10 of 14)

Coverage File chr4 (11 of 14)

Coverage File chr4 (12 of 14)

Coverage File chr4 (13 of 14)

Coverage File chr4 (14 of 14)

Kmer Bias chr5 (18 of 24)

chr5 
Coverage File chr5 (1 of 14)

Coverage File chr5 (2 of 14)

Coverage File chr5 (3 of 14)

Coverage File chr5 (4 of 14)

Coverage File chr5 (5 of 14)

Coverage File chr5 (6 of 14)

Coverage File chr5 (7 of 14)

Coverage File chr5 (8 of 14)

Coverage File chr5 (9 of 14)

Coverage File chr5 (10 of 14)

Coverage File chr5 (11 of 14)

Coverage File chr5 (12 of 14)

Coverage File chr5 (13 of 14)

Coverage File chr5 (14 of 14)

Kmer Bias chr6 (19 of 24)

chr6 
Coverage File chr6 (1 of 14)

Coverage File chr6 (2 of 14)

Coverage File chr6 (3 of 14)

Coverage File chr6 (4 of 14)

Coverage File chr6 (5 of 14)

Coverage File chr6 (6 of 14)

Coverage File chr6 (7 of 14)

Coverage File chr6 (8 of 14)

Coverage File chr6 (9 of 14)

Coverage File chr6 (10 of 14)

Coverage File chr6 (11 of 14)

Coverage File chr6 (12 of 14)

Coverage File chr6 (13 of 14)

Coverage File chr6 (14 of 14)

Kmer Bias chr7 (20 of 24)

chr7 
Coverage File chr7 (1 of 14)

Coverage File chr7 (2 of 14)

Coverage File chr7 (3 of 14)

Coverage File chr7 (4 of 14)

Coverage File chr7 (5 of 14)

Coverage File chr7 (6 of 14)

Coverage File chr7 (7 of 14)

Coverage File chr7 (8 of 14)

Coverage File chr7 (9 of 14)

Coverage File chr7 (10 of 14)

Coverage File chr7 (11 of 14)

Coverage File chr7 (12 of 14)

Coverage File chr7 (13 of 14)

Coverage File chr7 (14 of 14)

Kmer Bias chr8 (21 of 24)

chr8 
Coverage File chr8 (1 of 14)

Coverage File chr8 (2 of 14)

Coverage File chr8 (3 of 14)

Coverage File chr8 (4 of 14)

Coverage File chr8 (5 of 14)

Coverage File chr8 (6 of 14)

Coverage File chr8 (7 of 14)

Coverage File chr8 (8 of 14)

Coverage File chr8 (9 of 14)

Coverage File chr8 (10 of 14)

Coverage File chr8 (11 of 14)

Coverage File chr8 (12 of 14)

Coverage File chr8 (13 of 14)

Coverage File chr8 (14 of 14)

Kmer Bias chr9 (22 of 24)

chr9 
Coverage File chr9 (1 of 14)

Coverage File chr9 (2 of 14)

Coverage File chr9 (3 of 14)

Coverage File chr9 (4 of 14)

Coverage File chr9 (5 of 14)

Coverage File chr9 (6 of 14)

Coverage File chr9 (7 of 14)

Coverage File chr9 (8 of 14)

Coverage File chr9 (9 of 14)

Coverage File chr9 (10 of 14)

Coverage File chr9 (11 of 14)

Coverage File chr9 (12 of 14)

Coverage File chr9 (13 of 14)

Coverage File chr9 (14 of 14)

Kmer Bias chrX (23 of 24)

chrX 
Coverage File chrX (1 of 14)

Coverage File chrX (2 of 14)

Coverage File chrX (3 of 14)

Coverage File chrX (4 of 14)

Coverage File chrX (5 of 14)

Coverage File chrX (6 of 14)

Coverage File chrX (7 of 14)

Coverage File chrX (8 of 14)

Coverage File chrX (9 of 14)

Coverage File chrX (10 of 14)

Coverage File chrX (11 of 14)

Coverage File chrX (12 of 14)

Coverage File chrX (13 of 14)

Coverage File chrX (14 of 14)

Kmer Bias chrY (24 of 24)

chrY 
Coverage File chrY (1 of 14)

Coverage File chrY (2 of 14)

Coverage File chrY (3 of 14)

Coverage File chrY (4 of 14)

Coverage File chrY (5 of 14)

Coverage File chrY (6 of 14)

Coverage File chrY (7 of 14)

Coverage File chrY (8 of 14)

Coverage File chrY (9 of 14)

Coverage File chrY (10 of 14)

Coverage File chrY (11 of 14)

Coverage File chrY (12 of 14)

Coverage File chrY (13 of 14)

Coverage File chrY (14 of 14)

Completed Kmer Bias Calculation

Adding Kmer Bias (1 of 14)

Adding Kmer Bias (2 of 14)

Adding Kmer Bias (3 of 14)

Adding Kmer Bias (4 of 14)

Adding Kmer Bias (5 of 14)

Adding Kmer Bias (6 of 14)

Adding Kmer Bias (7 of 14)

Adding Kmer Bias (8 of 14)

Adding Kmer Bias (9 of 14)

Adding Kmer Bias (10 of 14)

Adding Kmer Bias (11 of 14)

Adding Kmer Bias (12 of 14)

Adding Kmer Bias (13 of 14)

Adding Kmer Bias (14 of 14)

2024-03-11 15:38:37 : Finished Creation of Coverage Files!, 5.398 mins elapsed.

ArchR logging successful to : ArchRLogs/ArchR-addGroupCoverages-c70a498463a9-Date-2024-03-11_Time-15-33-13.log

Copying ArchRProject to new outputDirectory : /Users/anthonygriffen/Dropbox (EinsteinMed)/Griffen - LaFave Lab/Omics Club Vignette/Final_Version/Save-ProjHeme3

Copying Arrow Files...

Copying Arrow Files (1 of 1)

Getting ImputeWeights

Dropping ImputeWeights...

Copying Other Files...

Copying Other Files (1 of 4): Embeddings

Copying Other Files (2 of 4): GroupCoverages

Copying Other Files (3 of 4): IterativeLSI

Copying Other Files (4 of 4): IterativeLSI2

Saving ArchRProject...

Loading ArchRProject...

Successfully loaded ArchRProject!


                                                   / |
                                                 /    \
            .                                  /      |.
            \\\                              /        |.
              \\\                          /           `|.
                \\\                      /              |.
                  \                    /                |\
                  \\#####\           /                  ||
                ==###########>      /                   ||
                 \\##==......\    /                     ||
            ______ =       =|__ /__                     ||      \\\
        ,--' ,----`-,__ ___/'  --,-`-===================##========>
       \               '        ##_______ _____ ,--,__,=##,__   ///
        ,    __==    ___,-,__,--'#'  ==='      `-'    | ##,-/
        -,____,---'       \\####\\________________,--\\_##,/
           ___      .______        ______  __    __  .______      
          /   \     |   _  \      /      ||  |  |  | |   _  \     
         /  ^  \    |  |_)  |    |  ,----'|  |__|  | |  |_)  |    
        /  /_\  \   |      /     |  |     |   __   | |      /     
       /  _____  \  |  |\  \\___ |  `----.|  |  |  | |  |\  \\___.
      /__/     \__\ | _| `._____| \______||__|  |__| | _| `._____|
    

In [ ]:
projHeme3 <- loadArchRProject("Save-ProjHeme3")
Successfully loaded ArchRProject!


                                                   / |
                                                 /    \
            .                                  /      |.
            \\\                              /        |.
              \\\                          /           `|.
                \\\                      /              |.
                  \                    /                |\
                  \\#####\           /                  ||
                ==###########>      /                   ||
                 \\##==......\    /                     ||
            ______ =       =|__ /__                     ||      \\\
        ,--' ,----`-,__ ___/'  --,-`-===================##========>
       \               '        ##_______ _____ ,--,__,=##,__   ///
        ,    __==    ___,-,__,--'#'  ==='      `-'    | ##,-/
        -,____,---'       \\####\\________________,--\\_##,/
           ___      .______        ______  __    __  .______      
          /   \     |   _  \      /      ||  |  |  | |   _  \     
         /  ^  \    |  |_)  |    |  ,----'|  |__|  | |  |_)  |    
        /  /_\  \   |      /     |  |     |   __   | |      /     
       /  _____  \  |  |\  \\___ |  `----.|  |  |  | |  |\  \\___.
      /__/     \__\ | _| `._____| \______||__|  |__| | _| `._____|
    

6. Calling Peaks¶

Calling peaks is one of the most fundamental processes in ATAC-seq data analysis. Because per-cell scATAC-seq data is essentially binary (accessible or not accessible), we cannot call peaks on an individual cell basis. For this reason, we defined groups of cells, typically clusters, in a previous chapter. Moreover, we will create pseudo-bulk replicates to allow us to assess the reproducibility of our peak calls.

6.1 Fixed-width vs Variable-width Peaks We use 501-bp fixed-width peaks because they make downstream computation easier as peak length does not need to be normalized. Moreover, the vast majority of peaks in ATAC-seq are less than 501-bp wide. Using variable-width peaks also makes it difficult to merge peak calls from multiple samples. In general, we do not feel that the potential benefit derived from using variable-width peaks outweighs the costs. More broadly, most analyses are stable with respect to the peak set or peak style used.

6.2: Iterative overlap in ArchR Peaks are first ranked by their significance. The most significant peak is retained and any peak that directly overlaps with the most significant peak is removed from further analysis. Then, of the remaining peaks, this process is repeated until no more peaks exist. This avoids daisy-chaining and still allows for use of fixed-width peaks.

In [ ]:
pathToMacs2 <- findMacs2()

# Generate merged peak set for each cluster
projHeme3 <- addReproduciblePeakSet(
    ArchRProj = projHeme3, 
    groupBy = "Clusters", 
    pathToMacs2 = pathToMacs2
)
Searching For MACS2..

Found with $path!

ArchR logging to : ArchRLogs/ArchR-addReproduciblePeakSet-ca5d4c0ee7f0-Date-2024-03-11_Time-15-42-06.log
If there is an issue, please report to github with logFile!

Calling Peaks with Macs2

2024-03-11 15:42:06 : Peak Calling Parameters!, 0.001 mins elapsed.

   Group nCells nCellsUsed nReplicates nMin nMax maxPeaks
C1    C1    135        135           2   40   95    67500
C2    C2    565        540           2   40  500   150000
C3    C3   1326        540           2   40  500   150000
C4    C4    315        315           2   40  275   150000
C5    C5    358        358           2   40  318   150000
C6    C6   1622        540           2   40  500   150000
C7    C7    368        368           2   40  328   150000
2024-03-11 15:42:06 : Batching Peak Calls!, 0.002 mins elapsed.

2024-03-11 15:42:06 : Batch Execution w/ safelapply!, 0 mins elapsed.

2024-03-11 15:42:06 : Group 1 of 14, Calling Peaks with MACS2!, 0 mins elapsed.

Running Macs2 with Params : macs2 callpeak -g 2.7e+09 --name C1._.Rep1-1 --treatment /Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/InsertionBeds/C1._.Rep1-1.insertions.bed --outdir /Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/InsertionBeds --format BED --call-summits --keep-dup all --nomodel --nolambda --shift -75 --extsize 150 -q 0.1

2024-03-11 15:42:13 : Group 2 of 14, Calling Peaks with MACS2!, 0.118 mins elapsed.

Running Macs2 with Params : macs2 callpeak -g 2.7e+09 --name C1._.Rep2-2 --treatment /Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/InsertionBeds/C1._.Rep2-2.insertions.bed --outdir /Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/InsertionBeds --format BED --call-summits --keep-dup all --nomodel --nolambda --shift -75 --extsize 150 -q 0.1

2024-03-11 15:42:31 : Group 3 of 14, Calling Peaks with MACS2!, 0.405 mins elapsed.

Running Macs2 with Params : macs2 callpeak -g 2.7e+09 --name C2._.Rep1-3 --treatment /Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/InsertionBeds/C2._.Rep1-3.insertions.bed --outdir /Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/InsertionBeds --format BED --call-summits --keep-dup all --nomodel --nolambda --shift -75 --extsize 150 -q 0.1

2024-03-11 15:42:56 : Group 4 of 14, Calling Peaks with MACS2!, 0.835 mins elapsed.

Running Macs2 with Params : macs2 callpeak -g 2.7e+09 --name C2._.Rep2-4 --treatment /Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/InsertionBeds/C2._.Rep2-4.insertions.bed --outdir /Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/InsertionBeds --format BED --call-summits --keep-dup all --nomodel --nolambda --shift -75 --extsize 150 -q 0.1

2024-03-11 15:43:21 : Group 5 of 14, Calling Peaks with MACS2!, 1.24 mins elapsed.

Running Macs2 with Params : macs2 callpeak -g 2.7e+09 --name C3._.Rep1-5 --treatment /Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/InsertionBeds/C3._.Rep1-5.insertions.bed --outdir /Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/InsertionBeds --format BED --call-summits --keep-dup all --nomodel --nolambda --shift -75 --extsize 150 -q 0.1

2024-03-11 15:43:44 : Group 6 of 14, Calling Peaks with MACS2!, 1.628 mins elapsed.

Running Macs2 with Params : macs2 callpeak -g 2.7e+09 --name C3._.Rep2-6 --treatment /Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/InsertionBeds/C3._.Rep2-6.insertions.bed --outdir /Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/InsertionBeds --format BED --call-summits --keep-dup all --nomodel --nolambda --shift -75 --extsize 150 -q 0.1

2024-03-11 15:43:59 : Group 7 of 14, Calling Peaks with MACS2!, 1.873 mins elapsed.

Running Macs2 with Params : macs2 callpeak -g 2.7e+09 --name C4._.Rep1-7 --treatment /Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/InsertionBeds/C4._.Rep1-7.insertions.bed --outdir /Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/InsertionBeds --format BED --call-summits --keep-dup all --nomodel --nolambda --shift -75 --extsize 150 -q 0.1

2024-03-11 15:44:10 : Group 8 of 14, Calling Peaks with MACS2!, 2.067 mins elapsed.

Running Macs2 with Params : macs2 callpeak -g 2.7e+09 --name C4._.Rep2-8 --treatment /Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/InsertionBeds/C4._.Rep2-8.insertions.bed --outdir /Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/InsertionBeds --format BED --call-summits --keep-dup all --nomodel --nolambda --shift -75 --extsize 150 -q 0.1

2024-03-11 15:44:22 : Group 9 of 14, Calling Peaks with MACS2!, 2.266 mins elapsed.

Running Macs2 with Params : macs2 callpeak -g 2.7e+09 --name C5._.Rep1-9 --treatment /Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/InsertionBeds/C5._.Rep1-9.insertions.bed --outdir /Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/InsertionBeds --format BED --call-summits --keep-dup all --nomodel --nolambda --shift -75 --extsize 150 -q 0.1

2024-03-11 15:44:34 : Group 10 of 14, Calling Peaks with MACS2!, 2.465 mins elapsed.

Running Macs2 with Params : macs2 callpeak -g 2.7e+09 --name C5._.Rep2-10 --treatment /Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/InsertionBeds/C5._.Rep2-10.insertions.bed --outdir /Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/InsertionBeds --format BED --call-summits --keep-dup all --nomodel --nolambda --shift -75 --extsize 150 -q 0.1

2024-03-11 15:44:52 : Group 11 of 14, Calling Peaks with MACS2!, 2.753 mins elapsed.

Running Macs2 with Params : macs2 callpeak -g 2.7e+09 --name C6._.Rep1-11 --treatment /Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/InsertionBeds/C6._.Rep1-11.insertions.bed --outdir /Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/InsertionBeds --format BED --call-summits --keep-dup all --nomodel --nolambda --shift -75 --extsize 150 -q 0.1

2024-03-11 15:45:06 : Group 12 of 14, Calling Peaks with MACS2!, 2.991 mins elapsed.

Running Macs2 with Params : macs2 callpeak -g 2.7e+09 --name C6._.Rep2-12 --treatment /Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/InsertionBeds/C6._.Rep2-12.insertions.bed --outdir /Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/InsertionBeds --format BED --call-summits --keep-dup all --nomodel --nolambda --shift -75 --extsize 150 -q 0.1

2024-03-11 15:45:16 : Group 13 of 14, Calling Peaks with MACS2!, 3.157 mins elapsed.

Running Macs2 with Params : macs2 callpeak -g 2.7e+09 --name C7._.Rep1-13 --treatment /Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/InsertionBeds/C7._.Rep1-13.insertions.bed --outdir /Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/InsertionBeds --format BED --call-summits --keep-dup all --nomodel --nolambda --shift -75 --extsize 150 -q 0.1

2024-03-11 15:45:31 : Group 14 of 14, Calling Peaks with MACS2!, 3.403 mins elapsed.

Running Macs2 with Params : macs2 callpeak -g 2.7e+09 --name C7._.Rep2-14 --treatment /Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/InsertionBeds/C7._.Rep2-14.insertions.bed --outdir /Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/InsertionBeds --format BED --call-summits --keep-dup all --nomodel --nolambda --shift -75 --extsize 150 -q 0.1

2024-03-11 15:45:45 : Identifying Reproducible Peaks!, 3.644 mins elapsed.

Annotating Peaks : Nearest Gene

Annotating Peaks : Gene

Annotating Peaks : TSS

Annotating Peaks : GC

[1] "/Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/C1-reproduciblePeaks.gr.rds"
Annotating Peaks : Nearest Gene

Annotating Peaks : Gene

Annotating Peaks : TSS

Annotating Peaks : GC

[1] "/Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/C2-reproduciblePeaks.gr.rds"
Annotating Peaks : Nearest Gene

Annotating Peaks : Gene

Annotating Peaks : TSS

Annotating Peaks : GC

[1] "/Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/C3-reproduciblePeaks.gr.rds"
Annotating Peaks : Nearest Gene

Annotating Peaks : Gene

Annotating Peaks : TSS

Annotating Peaks : GC

[1] "/Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/C4-reproduciblePeaks.gr.rds"
Annotating Peaks : Nearest Gene

Annotating Peaks : Gene

Annotating Peaks : TSS

Annotating Peaks : GC

[1] "/Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/C5-reproduciblePeaks.gr.rds"
Annotating Peaks : Nearest Gene

Annotating Peaks : Gene

Annotating Peaks : TSS

Annotating Peaks : GC

[1] "/Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/C6-reproduciblePeaks.gr.rds"
Annotating Peaks : Nearest Gene

Annotating Peaks : Gene

Annotating Peaks : TSS

Annotating Peaks : GC

[1] "/Users/anthonygriffen/Desktop/Final_Version/Save-ProjHeme3/PeakCalls/C7-reproduciblePeaks.gr.rds"
2024-03-11 15:46:04 : Creating Union Peak Set!, 3.958 mins elapsed.

Converged after 6 iterations!

Plotting Ggplot!

2024-03-11 15:46:08 : Finished Creating Union Peak Set (102990)!, 4.023 mins elapsed.

Peak Call Summary:¶

In [ ]:
# PeakMatrix is the matrix of insertion counts derived from the peak set stored in the ArchRProject
projHeme3 <- addPeakMatrix(projHeme3)

getAvailableMatrices(projHeme3)
ArchR logging to : ArchRLogs/ArchR-addPeakMatrix-ca5d6735e1df-Date-2024-03-11_Time-15-46-56.log
If there is an issue, please report to github with logFile!

2024-03-11 15:46:56 : Batch Execution w/ safelapply!, 0 mins elapsed.

2024-03-11 15:46:56 : Adding scATAC_BMMC_R1 to PeakMatrix for Chr (1 of 23)!, 0.004 mins elapsed.

2024-03-11 15:46:58 : Adding scATAC_BMMC_R1 to PeakMatrix for Chr (2 of 23)!, 0.031 mins elapsed.

2024-03-11 15:46:59 : Adding scATAC_BMMC_R1 to PeakMatrix for Chr (3 of 23)!, 0.049 mins elapsed.

2024-03-11 15:47:00 : Adding scATAC_BMMC_R1 to PeakMatrix for Chr (4 of 23)!, 0.065 mins elapsed.

2024-03-11 15:47:01 : Adding scATAC_BMMC_R1 to PeakMatrix for Chr (5 of 23)!, 0.08 mins elapsed.

2024-03-11 15:47:02 : Adding scATAC_BMMC_R1 to PeakMatrix for Chr (6 of 23)!, 0.095 mins elapsed.

2024-03-11 15:47:03 : Adding scATAC_BMMC_R1 to PeakMatrix for Chr (7 of 23)!, 0.114 mins elapsed.

2024-03-11 15:47:04 : Adding scATAC_BMMC_R1 to PeakMatrix for Chr (8 of 23)!, 0.129 mins elapsed.

2024-03-11 15:47:04 : Adding scATAC_BMMC_R1 to PeakMatrix for Chr (9 of 23)!, 0.143 mins elapsed.

2024-03-11 15:47:05 : Adding scATAC_BMMC_R1 to PeakMatrix for Chr (10 of 23)!, 0.157 mins elapsed.

2024-03-11 15:47:06 : Adding scATAC_BMMC_R1 to PeakMatrix for Chr (11 of 23)!, 0.172 mins elapsed.

2024-03-11 15:47:07 : Adding scATAC_BMMC_R1 to PeakMatrix for Chr (12 of 23)!, 0.188 mins elapsed.

2024-03-11 15:47:08 : Adding scATAC_BMMC_R1 to PeakMatrix for Chr (13 of 23)!, 0.204 mins elapsed.

2024-03-11 15:47:09 : Adding scATAC_BMMC_R1 to PeakMatrix for Chr (14 of 23)!, 0.217 mins elapsed.

2024-03-11 15:47:10 : Adding scATAC_BMMC_R1 to PeakMatrix for Chr (15 of 23)!, 0.23 mins elapsed.

2024-03-11 15:47:10 : Adding scATAC_BMMC_R1 to PeakMatrix for Chr (16 of 23)!, 0.243 mins elapsed.

2024-03-11 15:47:11 : Adding scATAC_BMMC_R1 to PeakMatrix for Chr (17 of 23)!, 0.257 mins elapsed.

2024-03-11 15:47:12 : Adding scATAC_BMMC_R1 to PeakMatrix for Chr (18 of 23)!, 0.273 mins elapsed.

2024-03-11 15:47:13 : Adding scATAC_BMMC_R1 to PeakMatrix for Chr (19 of 23)!, 0.286 mins elapsed.

2024-03-11 15:47:14 : Adding scATAC_BMMC_R1 to PeakMatrix for Chr (20 of 23)!, 0.302 mins elapsed.

2024-03-11 15:47:15 : Adding scATAC_BMMC_R1 to PeakMatrix for Chr (21 of 23)!, 0.315 mins elapsed.

2024-03-11 15:47:15 : Adding scATAC_BMMC_R1 to PeakMatrix for Chr (22 of 23)!, 0.327 mins elapsed.

2024-03-11 15:47:16 : Adding scATAC_BMMC_R1 to PeakMatrix for Chr (23 of 23)!, 0.34 mins elapsed.

ArchR logging successful to : ArchRLogs/ArchR-addPeakMatrix-ca5d6735e1df-Date-2024-03-11_Time-15-46-56.log

  1. 'GeneScoreMatrix'
  2. 'PeakMatrix'
  3. 'TileMatrix'
In [22]:
saveArchRProject(ArchRProj = projHeme3, outputDirectory = "Save-ProjHeme3", load = FALSE)
Saving ArchRProject...

7. Motif Enrichment¶

After identification of a robust peak set, we often want to predict what transcription factors may be mediating the binding events that create those accessible chromatin sites. This can be helpful in assessing marker peaks or differential peaks to understand if these groups of peaks are enriched for binding sites of specific transcription factors. For example, we often find enrichment of key lineage-defining TFs in cell type-specific accessible chromatin regions. In a similar fashion, we might want to test various groups of peaks for enrichment of other known features. For example, we might want to know if cell type-specific ATAC-seq peaks for cell type A are enriched for another set of genomic regions such as ChIP-seq peaks. This chapter details how these enrichments are performed in ArchR.

In [2]:
projHeme3 <- loadArchRProject("Save-ProjHeme3")
Successfully loaded ArchRProject!


                                                   / |
                                                 /    \
            .                                  /      |.
            \\\                              /        |.
              \\\                          /           `|.
                \\\                      /              |.
                  \                    /                |\
                  \\#####\           /                  ||
                ==###########>      /                   ||
                 \\##==......\    /                     ||
            ______ =       =|__ /__                     ||      \\\
        ,--' ,----`-,__ ___/'  --,-`-===================##========>
       \               '        ##_______ _____ ,--,__,=##,__   ///
        ,    __==    ___,-,__,--'#'  ==='      `-'    | ##,-/
        -,____,---'       \\####\\________________,--\\_##,/
           ___      .______        ______  __    __  .______      
          /   \     |   _  \      /      ||  |  |  | |   _  \     
         /  ^  \    |  |_)  |    |  ,----'|  |__|  | |  |_)  |    
        /  /_\  \   |      /     |  |     |   __   | |      /     
       /  _____  \  |  |\  \\___ |  `----.|  |  |  | |  |\  \\___.
      /__/     \__\ | _| `._____| \______||__|  |__| | _| `._____|
    

In [6]:
# Supported motif sets include: 
projHeme4 <- addMotifAnnotations(ArchRProj = projHeme3, motifSet = "cisbp", name = "Motif", force=TRUE)

markersPeaks <- getMarkerFeatures(
    ArchRProj = projHeme4, 
    useMatrix = "PeakMatrix", 
    groupBy = "Clusters",
  bias = c("TSSEnrichment", "log10(nFrags)"),
  testMethod = "wilcoxon"
)

enrichMotifs <- peakAnnoEnrichment(
    seMarker = markersPeaks,
    ArchRProj = projHeme4,
    peakAnnotation = "Motif",
    cutOff = "FDR <= 0.1 & Log2FC >= 0.5"
  )

heatmapEM <- plotEnrichHeatmap(enrichMotifs, n = 7, transpose = TRUE)

#plotPDF(heatmapEM, name = "ArchR-Clusters-Motifs-Enriched-Marker-Heatmap", width = 8, height = 6, ArchRProj = projHeme3, addDOC = FALSE)
ArchR logging to : ArchRLogs/ArchR-addMotifAnnotations-d5fc4e032f52-Date-2024-03-11_Time-16-31-12.log
If there is an issue, please report to github with logFile!

peakAnnotation name already exists! Overriding.

2024-03-11 16:31:12 : Gettting Motif Set, Species : Homo sapiens, 0.001 mins elapsed.

Using version 2 motifs!

2024-03-11 16:31:13 : Finding Motif Positions with motifmatchr!, 0.021 mins elapsed.

2024-03-11 16:32:37 : All Motifs Overlap at least 1 peak!, 1.411 mins elapsed.

2024-03-11 16:32:37 : Creating Motif Overlap Matrix, 1.411 mins elapsed.

2024-03-11 16:32:38 : Finished Getting Motif Info!, 1.427 mins elapsed.

ArchR logging successful to : ArchRLogs/ArchR-addMotifAnnotations-d5fc4e032f52-Date-2024-03-11_Time-16-31-12.log

ArchR logging to : ArchRLogs/ArchR-getMarkerFeatures-d5fc3317d881-Date-2024-03-11_Time-16-32-39.log
If there is an issue, please report to github with logFile!

MatrixClass = Sparse.Integer.Matrix

2024-03-11 16:32:39 : Matching Known Biases, 0.002 mins elapsed.

2024-03-11 16:32:40 : Computing Pairwise Tests (1 of 7), 0.014 mins elapsed.

Pairwise Test C1 : Seqnames chr1

Pairwise Test C1 : Seqnames chr10

Pairwise Test C1 : Seqnames chr11

Pairwise Test C1 : Seqnames chr12

Pairwise Test C1 : Seqnames chr13

Pairwise Test C1 : Seqnames chr14

Pairwise Test C1 : Seqnames chr15

Pairwise Test C1 : Seqnames chr16

Pairwise Test C1 : Seqnames chr17

Pairwise Test C1 : Seqnames chr18

Pairwise Test C1 : Seqnames chr19

Pairwise Test C1 : Seqnames chr2

Pairwise Test C1 : Seqnames chr20

Pairwise Test C1 : Seqnames chr21

Pairwise Test C1 : Seqnames chr22

Pairwise Test C1 : Seqnames chr3

Pairwise Test C1 : Seqnames chr4

Pairwise Test C1 : Seqnames chr5

Pairwise Test C1 : Seqnames chr6

Pairwise Test C1 : Seqnames chr7

Pairwise Test C1 : Seqnames chr8

Pairwise Test C1 : Seqnames chr9

Pairwise Test C1 : Seqnames chrX

2024-03-11 16:32:49 : Computing Pairwise Tests (2 of 7), 0.169 mins elapsed.

Pairwise Test C2 : Seqnames chr1

Pairwise Test C2 : Seqnames chr10

Pairwise Test C2 : Seqnames chr11

Pairwise Test C2 : Seqnames chr12

Pairwise Test C2 : Seqnames chr13

Pairwise Test C2 : Seqnames chr14

Pairwise Test C2 : Seqnames chr15

Pairwise Test C2 : Seqnames chr16

Pairwise Test C2 : Seqnames chr17

Pairwise Test C2 : Seqnames chr18

Pairwise Test C2 : Seqnames chr19

Pairwise Test C2 : Seqnames chr2

Pairwise Test C2 : Seqnames chr20

Pairwise Test C2 : Seqnames chr21

Pairwise Test C2 : Seqnames chr22

Pairwise Test C2 : Seqnames chr3

Pairwise Test C2 : Seqnames chr4

Pairwise Test C2 : Seqnames chr5

Pairwise Test C2 : Seqnames chr6

Pairwise Test C2 : Seqnames chr7

Pairwise Test C2 : Seqnames chr8

Pairwise Test C2 : Seqnames chr9

Pairwise Test C2 : Seqnames chrX

2024-03-11 16:32:58 : Computing Pairwise Tests (3 of 7), 0.323 mins elapsed.

Pairwise Test C3 : Seqnames chr1

Pairwise Test C3 : Seqnames chr10

Pairwise Test C3 : Seqnames chr11

Pairwise Test C3 : Seqnames chr12

Pairwise Test C3 : Seqnames chr13

Pairwise Test C3 : Seqnames chr14

Pairwise Test C3 : Seqnames chr15

Pairwise Test C3 : Seqnames chr16

Pairwise Test C3 : Seqnames chr17

Pairwise Test C3 : Seqnames chr18

Pairwise Test C3 : Seqnames chr19

Pairwise Test C3 : Seqnames chr2

Pairwise Test C3 : Seqnames chr20

Pairwise Test C3 : Seqnames chr21

Pairwise Test C3 : Seqnames chr22

Pairwise Test C3 : Seqnames chr3

Pairwise Test C3 : Seqnames chr4

Pairwise Test C3 : Seqnames chr5

Pairwise Test C3 : Seqnames chr6

Pairwise Test C3 : Seqnames chr7

Pairwise Test C3 : Seqnames chr8

Pairwise Test C3 : Seqnames chr9

Pairwise Test C3 : Seqnames chrX

2024-03-11 16:33:08 : Computing Pairwise Tests (4 of 7), 0.481 mins elapsed.

Pairwise Test C4 : Seqnames chr1

Pairwise Test C4 : Seqnames chr10

Pairwise Test C4 : Seqnames chr11

Pairwise Test C4 : Seqnames chr12

Pairwise Test C4 : Seqnames chr13

Pairwise Test C4 : Seqnames chr14

Pairwise Test C4 : Seqnames chr15

Pairwise Test C4 : Seqnames chr16

Pairwise Test C4 : Seqnames chr17

Pairwise Test C4 : Seqnames chr18

Pairwise Test C4 : Seqnames chr19

Pairwise Test C4 : Seqnames chr2

Pairwise Test C4 : Seqnames chr20

Pairwise Test C4 : Seqnames chr21

Pairwise Test C4 : Seqnames chr22

Pairwise Test C4 : Seqnames chr3

Pairwise Test C4 : Seqnames chr4

Pairwise Test C4 : Seqnames chr5

Pairwise Test C4 : Seqnames chr6

Pairwise Test C4 : Seqnames chr7

Pairwise Test C4 : Seqnames chr8

Pairwise Test C4 : Seqnames chr9

Pairwise Test C4 : Seqnames chrX

2024-03-11 16:33:17 : Computing Pairwise Tests (5 of 7), 0.633 mins elapsed.

Pairwise Test C5 : Seqnames chr1

Pairwise Test C5 : Seqnames chr10

Pairwise Test C5 : Seqnames chr11

Pairwise Test C5 : Seqnames chr12

Pairwise Test C5 : Seqnames chr13

Pairwise Test C5 : Seqnames chr14

Pairwise Test C5 : Seqnames chr15

Pairwise Test C5 : Seqnames chr16

Pairwise Test C5 : Seqnames chr17

Pairwise Test C5 : Seqnames chr18

Pairwise Test C5 : Seqnames chr19

Pairwise Test C5 : Seqnames chr2

Pairwise Test C5 : Seqnames chr20

Pairwise Test C5 : Seqnames chr21

Pairwise Test C5 : Seqnames chr22

Pairwise Test C5 : Seqnames chr3

Pairwise Test C5 : Seqnames chr4

Pairwise Test C5 : Seqnames chr5

Pairwise Test C5 : Seqnames chr6

Pairwise Test C5 : Seqnames chr7

Pairwise Test C5 : Seqnames chr8

Pairwise Test C5 : Seqnames chr9

Pairwise Test C5 : Seqnames chrX

2024-03-11 16:33:26 : Computing Pairwise Tests (6 of 7), 0.784 mins elapsed.

Pairwise Test C6 : Seqnames chr1

Pairwise Test C6 : Seqnames chr10

Pairwise Test C6 : Seqnames chr11

Pairwise Test C6 : Seqnames chr12

Pairwise Test C6 : Seqnames chr13

Pairwise Test C6 : Seqnames chr14

Pairwise Test C6 : Seqnames chr15

Pairwise Test C6 : Seqnames chr16

Pairwise Test C6 : Seqnames chr17

Pairwise Test C6 : Seqnames chr18

Pairwise Test C6 : Seqnames chr19

Pairwise Test C6 : Seqnames chr2

Pairwise Test C6 : Seqnames chr20

Pairwise Test C6 : Seqnames chr21

Pairwise Test C6 : Seqnames chr22

Pairwise Test C6 : Seqnames chr3

Pairwise Test C6 : Seqnames chr4

Pairwise Test C6 : Seqnames chr5

Pairwise Test C6 : Seqnames chr6

Pairwise Test C6 : Seqnames chr7

Pairwise Test C6 : Seqnames chr8

Pairwise Test C6 : Seqnames chr9

Pairwise Test C6 : Seqnames chrX

2024-03-11 16:33:35 : Computing Pairwise Tests (7 of 7), 0.94 mins elapsed.

Pairwise Test C7 : Seqnames chr1

Pairwise Test C7 : Seqnames chr10

Pairwise Test C7 : Seqnames chr11

Pairwise Test C7 : Seqnames chr12

Pairwise Test C7 : Seqnames chr13

Pairwise Test C7 : Seqnames chr14

Pairwise Test C7 : Seqnames chr15

Pairwise Test C7 : Seqnames chr16

Pairwise Test C7 : Seqnames chr17

Pairwise Test C7 : Seqnames chr18

Pairwise Test C7 : Seqnames chr19

Pairwise Test C7 : Seqnames chr2

Pairwise Test C7 : Seqnames chr20

Pairwise Test C7 : Seqnames chr21

Pairwise Test C7 : Seqnames chr22

Pairwise Test C7 : Seqnames chr3

Pairwise Test C7 : Seqnames chr4

Pairwise Test C7 : Seqnames chr5

Pairwise Test C7 : Seqnames chr6

Pairwise Test C7 : Seqnames chr7

Pairwise Test C7 : Seqnames chr8

Pairwise Test C7 : Seqnames chr9

Pairwise Test C7 : Seqnames chrX

###########
2024-03-11 16:33:45 : Completed Pairwise Tests, 1.097 mins elapsed.
###########

ArchR logging successful to : ArchRLogs/ArchR-getMarkerFeatures-d5fc3317d881-Date-2024-03-11_Time-16-32-39.log

ArchR logging to : ArchRLogs/ArchR-peakAnnoEnrichment-d5fc6287175b-Date-2024-03-11_Time-16-33-45.log
If there is an issue, please report to github with logFile!

2024-03-11 16:33:47 : Computing Enrichments 1 of 7, 0.032 mins elapsed.

2024-03-11 16:33:47 : Computing Enrichments 2 of 7, 0.033 mins elapsed.

2024-03-11 16:33:47 : Computing Enrichments 3 of 7, 0.034 mins elapsed.

2024-03-11 16:33:47 : Computing Enrichments 4 of 7, 0.035 mins elapsed.

2024-03-11 16:33:47 : Computing Enrichments 5 of 7, 0.036 mins elapsed.

2024-03-11 16:33:47 : Computing Enrichments 6 of 7, 0.037 mins elapsed.

2024-03-11 16:33:47 : Computing Enrichments 7 of 7, 0.038 mins elapsed.

ArchR logging successful to : ArchRLogs/ArchR-peakAnnoEnrichment-d5fc6287175b-Date-2024-03-11_Time-16-33-45.log

ArchR logging to : ArchRLogs/ArchR-plotEnrichHeatmap-d5fc130e89e6-Date-2024-03-11_Time-16-33-47.log
If there is an issue, please report to github with logFile!

Warning message:
“package ‘circlize’ was built under R version 4.2.3”
Adding Annotations..

Preparing Main Heatmap..

In [ ]:
saveArchRProject(projHeme4, "Save-ProjHeme4")